#include <stdio.h>

int Add(int x, int y)
{
    return x + y;
}

int main()
{
    int arr[5] = {0};
    int (*p)[5] = &arr;//数组指针

    printf("%p\n", Add);
    printf("%p\n", &Add);//函数的地址，Add和&Add无区别

    int (*pf)(int, int) = &Add;//函数指针

    printf("%p\n", pf);
    printf("%d\n", (*pf)(2, 3));
    printf("%d\n", pf(2, 3));//*可写可不写，也可写多个
    printf("%d", (*Add)(2, 3));//Add的值赋给pf，二者是等效的

    
    return 0;
}